package app.fugema.shop.main.order.model;

import java.util.List;

public class SubmitModelResult
{

    /**
     * success : true
     * msg :
     * code : 0
     * Address : {"Id":34,"ShipTo":"小贾","Phone":"13125043082","Address":"湖北省 襄阳市 樊城区 王寨街道 王寨中心学校-小明珠幼儿园 56号","RegionId":26122}
     * canIntegralPerMoney : true
     * canCapital : true
     * InvoiceContext : [{"Id":47,"Name":"个人","ModifiedColumns":[],"EnableLazyLoad":true,"IgnoreReference":false},{"Id":48,"Name":"公司","ModifiedColumns":[],"EnableLazyLoad":true,"IgnoreReference":false}]
     * InvoiceTitle : []
     * cellPhone :
     * email :
     * vatInvoice : {"Id":0,"UserId":0,"InvoiceType":0,"Name":null,"Code":null,"InvoiceContext":null,"RegisterAddress":null,"RegisterPhone":null,"BankName":null,"BankNo":null,"RealName":"小贾","CellPhone":"13125043082","Email":null,"RegionID":26122,"Address":"王寨中心学校-小明珠幼儿园 56号","IsDefault":0,"RegionFullName":"湖北省 襄阳市 樊城区 王寨街道","InvoiceDay":null,"ModifiedColumns":["RealName","CellPhone","RegionID","Address"],"EnableLazyLoad":true,"IgnoreReference":false}
     * invoiceName :
     * invoiceCode :
     * products : [{"shopId":9,"ShopName":"官方自营1号店-1","Freight":10,"FreeFreight":300,"CartItemModels":[{"skuId":"2767_1531_2796_0","size":"XL","color":"黑色","version":null,"skuDetails":null,"id":2767,"imgUrl":"https://www.fugema.cn:443//Storage/Shop/9/Products/2767/1_100.png","shopName":null,"name":"佳浩厂家冬季新款男士休闲棉服外套韩版潮流时尚纯色立领加厚保暖男士棉衣","price":288,"count":1,"shopId":9,"vshopId":0,"IsSelf":false,"productCode":"DS574","unit":"件","UserCoupons":null,"isDis":false,"ColorAlias":"颜色","SizeAlias":"尺码","VersionAlias":"规格","collpid":0,"IsLimit":false,"ShopBranchId":0,"ShopBranchName":"","IsOpenLadder":false,"FreightTemplateId":220,"fullDiscount":0,"ProductType":0}],"UserCoupons":[],"FullDiscount":0,"ShopTotal":298,"ShopTotalWithoutFreight":288,"UserBonus":null,"BaseCoupons":[],"OneCoupons":null,"freightProductGroup":null,"IsFreeFreight":false,"VshopId":13,"IsSelf":false,"ExistShopBranch":false,"ShopBranchId":0,"ShopBranchName":"","IsOpenLadder":false,"IsInvoice":true,"invoiceTpyes":[{"Id":2,"Name":"电子普通发票","Rate":3},{"Id":3,"Name":"增值税发票","Rate":3}],"InvoiceDay":"15-18"}]
     * capitalAmount : 0
     * TotalAmount : 288
     * Freight : 10
     * orderAmount : 298
     * IsCashOnDelivery : false
     * IsOpenStore : true
     * ProvideInvoice : true
     * integralPerMoney : 0.09
     * userIntegralMaxDeductible : 0.09
     * integralPerMoneyRate : 300
     * userIntegralMaxRate : 100
     * userIntegrals : 29
     * TotalMemberIntegral : 29
     * productType : 0
     * shipperAddress :
     * shipperTelPhone :
     */

    private boolean success;
    private String msg;
    private int code;
    private SimpleAddressBean Address;
    // 可以使用积分
    private boolean canIntegralPerMoney;
    // 可以使用余额
    private boolean canCapital;
    private String cellPhone;
    private String email;
    private VatInvoiceBean vatInvoice;
    private String invoiceName;
    private String invoiceCode;
    // 改用户的账户 余额
    private double capitalAmount;
    private double TotalAmount;
    private double Freight;
    private double orderAmount;
    private boolean IsCashOnDelivery;
    private boolean IsOpenStore;
    private boolean ProvideInvoice;
    //积分抵扣最大金额
    private double integralPerMoney;
    //用户积分最多抵扣金额
    private double userIntegralMaxDeductible;
    //积分 兑换 抵扣金额 的比例   300
    private int integralPerMoneyRate;
    //100      （3积分 = 0.01元）
    private int userIntegralMaxRate;
    //用户积分
    private int userIntegrals;
    //积分
    private int TotalMemberIntegral;
    private int productType;
    private String shipperAddress;
    private String shipperTelPhone;
    private List<InvoiceContextBean> InvoiceContext;
    private List<VatInvoiceBean> InvoiceTitle;
    private List<ProductsBean> products;

    public boolean isSuccess() {
        return success;
    }

    public void setSuccess(boolean success) {
        this.success = success;
    }

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public int getCode() {
        return code;
    }

    public void setCode(int code) {
        this.code = code;
    }

    public SimpleAddressBean getAddress()
    {
        return Address;
    }

    public void setAddress(SimpleAddressBean address)
    {
        Address = address;
    }

    public boolean isCanIntegralPerMoney() {
        return canIntegralPerMoney;
    }

    public void setCanIntegralPerMoney(boolean canIntegralPerMoney) {
        this.canIntegralPerMoney = canIntegralPerMoney;
    }

    public boolean isCanCapital() {
        return canCapital;
    }

    public void setCanCapital(boolean canCapital) {
        this.canCapital = canCapital;
    }

    public String getCellPhone() {
        return cellPhone;
    }

    public void setCellPhone(String cellPhone) {
        this.cellPhone = cellPhone;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public VatInvoiceBean getVatInvoice() {
        return vatInvoice;
    }

    public void setVatInvoice(VatInvoiceBean vatInvoice) {
        this.vatInvoice = vatInvoice;
    }

    public String getInvoiceName() {
        return invoiceName;
    }

    public void setInvoiceName(String invoiceName) {
        this.invoiceName = invoiceName;
    }

    public String getInvoiceCode() {
        return invoiceCode;
    }

    public void setInvoiceCode(String invoiceCode) {
        this.invoiceCode = invoiceCode;
    }

    public double getCapitalAmount() {
        return capitalAmount;
    }

    public void setCapitalAmount(int capitalAmount) {
        this.capitalAmount = capitalAmount;
    }

    public double getTotalAmount() {
        return TotalAmount;
    }

    public void setTotalAmount(int TotalAmount) {
        this.TotalAmount = TotalAmount;
    }

    public double getFreight() {
        return Freight;
    }

    public void setFreight(int Freight) {
        this.Freight = Freight;
    }

    public double getOrderAmount() {
        return orderAmount;
    }

    public void setOrderAmount(double orderAmount)
    {
        this.orderAmount = orderAmount;
    }

    public boolean isIsCashOnDelivery() {
        return IsCashOnDelivery;
    }

    public void setIsCashOnDelivery(boolean IsCashOnDelivery) {
        this.IsCashOnDelivery = IsCashOnDelivery;
    }

    public boolean isIsOpenStore() {
        return IsOpenStore;
    }

    public void setIsOpenStore(boolean IsOpenStore) {
        this.IsOpenStore = IsOpenStore;
    }

    public boolean isProvideInvoice() {
        return ProvideInvoice;
    }

    public void setProvideInvoice(boolean ProvideInvoice) {
        this.ProvideInvoice = ProvideInvoice;
    }

    public double getIntegralPerMoney() {
        return integralPerMoney;
    }

    public void setIntegralPerMoney(double integralPerMoney) {
        this.integralPerMoney = integralPerMoney;
    }

    public double getUserIntegralMaxDeductible() {
        return userIntegralMaxDeductible;
    }

    public void setUserIntegralMaxDeductible(double userIntegralMaxDeductible) {
        this.userIntegralMaxDeductible = userIntegralMaxDeductible;
    }

    public int getIntegralPerMoneyRate() {
        return integralPerMoneyRate;
    }

    public void setIntegralPerMoneyRate(int integralPerMoneyRate) {
        this.integralPerMoneyRate = integralPerMoneyRate;
    }

    public int getUserIntegralMaxRate() {
        return userIntegralMaxRate;
    }

    public void setUserIntegralMaxRate(int userIntegralMaxRate) {
        this.userIntegralMaxRate = userIntegralMaxRate;
    }

    public int getUserIntegrals() {
        return userIntegrals;
    }

    public void setUserIntegrals(int userIntegrals) {
        this.userIntegrals = userIntegrals;
    }

    public int getTotalMemberIntegral() {
        return TotalMemberIntegral;
    }

    public void setTotalMemberIntegral(int TotalMemberIntegral) {
        this.TotalMemberIntegral = TotalMemberIntegral;
    }

    public int getProductType() {
        return productType;
    }

    public void setProductType(int productType) {
        this.productType = productType;
    }

    public String getShipperAddress() {
        return shipperAddress;
    }

    public void setShipperAddress(String shipperAddress) {
        this.shipperAddress = shipperAddress;
    }

    public String getShipperTelPhone() {
        return shipperTelPhone;
    }

    public void setShipperTelPhone(String shipperTelPhone) {
        this.shipperTelPhone = shipperTelPhone;
    }

    public List<InvoiceContextBean> getInvoiceContext() {
        return InvoiceContext;
    }

    public void setInvoiceContext(List<InvoiceContextBean> InvoiceContext) {
        this.InvoiceContext = InvoiceContext;
    }

    public List<VatInvoiceBean> getInvoiceTitle()
    {
        return InvoiceTitle;
    }

    public void setInvoiceTitle(List<VatInvoiceBean> InvoiceTitle)
    {
        this.InvoiceTitle = InvoiceTitle;
    }

    public List<ProductsBean> getProducts() {
        return products;
    }

    public void setProducts(List<ProductsBean> products) {
        this.products = products;
    }

    public static class InvoiceContextBean {
        /**
         * Id : 47
         * Name : 个人
         * ModifiedColumns : []
         * EnableLazyLoad : true
         * IgnoreReference : false
         */

        private int Id;
        private String Name;
        private boolean EnableLazyLoad;
        private boolean IgnoreReference;
        private List<?> ModifiedColumns;

        public int getId() {
            return Id;
        }

        public void setId(int Id) {
            this.Id = Id;
        }

        public String getName() {
            return Name;
        }

        public void setName(String Name) {
            this.Name = Name;
        }

        public boolean isEnableLazyLoad() {
            return EnableLazyLoad;
        }

        public void setEnableLazyLoad(boolean EnableLazyLoad) {
            this.EnableLazyLoad = EnableLazyLoad;
        }

        public boolean isIgnoreReference() {
            return IgnoreReference;
        }

        public void setIgnoreReference(boolean IgnoreReference) {
            this.IgnoreReference = IgnoreReference;
        }

        public List<?> getModifiedColumns() {
            return ModifiedColumns;
        }

        public void setModifiedColumns(List<?> ModifiedColumns) {
            this.ModifiedColumns = ModifiedColumns;
        }
    }

    public static class ProductsBean {
        /**
         * shopId : 9
         * ShopName : 官方自营1号店-1
         * Freight : 10
         * FreeFreight : 300
         * CartItemModels : [{"skuId":"2767_1531_2796_0","size":"XL","color":"黑色","version":null,"skuDetails":null,"id":2767,"imgUrl":"https://www.fugema.cn:443//Storage/Shop/9/Products/2767/1_100.png","shopName":null,"name":"佳浩厂家冬季新款男士休闲棉服外套韩版潮流时尚纯色立领加厚保暖男士棉衣","price":288,"count":1,"shopId":9,"vshopId":0,"IsSelf":false,"productCode":"DS574","unit":"件","UserCoupons":null,"isDis":false,"ColorAlias":"颜色","SizeAlias":"尺码","VersionAlias":"规格","collpid":0,"IsLimit":false,"ShopBranchId":0,"ShopBranchName":"","IsOpenLadder":false,"FreightTemplateId":220,"fullDiscount":0,"ProductType":0}]
         * UserCoupons : []
         * FullDiscount : 0
         * ShopTotal : 298
         * ShopTotalWithoutFreight : 288
         * UserBonus : null
         * BaseCoupons : []
         * OneCoupons : null
         * freightProductGroup : null
         * IsFreeFreight : false
         * VshopId : 13
         * IsSelf : false
         * ExistShopBranch : false
         * ShopBranchId : 0
         * ShopBranchName :
         * IsOpenLadder : false
         * IsInvoice : true
         * invoiceTpyes : [{"Id":2,"Name":"电子普通发票","Rate":3},{"Id":3,"Name":"增值税发票","Rate":3}]
         * InvoiceDay : 15-18
         */

        private int shopId;
        private String ShopName;
        private int Freight;
        private int FreeFreight;
        //满减优惠
        private double FullDiscount;
        private double ShopTotal;
        private double ShopTotalWithoutFreight;
        private Object UserBonus;
        private BaseCouponBean OneCoupons;
        private Object freightProductGroup;
        private boolean IsFreeFreight;
        private int VshopId;
        private boolean IsSelf;
        private boolean ExistShopBranch;
        private int ShopBranchId;
        private String ShopBranchName;
        private boolean IsOpenLadder;
        private boolean IsInvoice;
        private String InvoiceDay;
        private List<CartItemProductModel> CartItemModels;
        private List<BaseCouponBean> UserCoupons;
        private List<BaseCouponBean> BaseCoupons;
        private List<InvoiceTpyesBean> invoiceTpyes;
        // 主动添加一个 参数 remark 用来存储  添加的 备注
        private String remark;
        private VatInvoiceBean simpleInvoice;

        public int getShopId() {
            return shopId;
        }

        public void setShopId(int shopId) {
            this.shopId = shopId;
        }

        public String getShopName() {
            return ShopName;
        }

        public void setShopName(String ShopName) {
            this.ShopName = ShopName;
        }

        public int getFreight() {
            return Freight;
        }

        public void setFreight(int Freight) {
            this.Freight = Freight;
        }

        public int getFreeFreight() {
            return FreeFreight;
        }

        public void setFreeFreight(int FreeFreight) {
            this.FreeFreight = FreeFreight;
        }

        public double getFullDiscount() {
            return FullDiscount;
        }

        public void setFullDiscount(double FullDiscount) {
            this.FullDiscount = FullDiscount;
        }

        public double getShopTotal() {
            return ShopTotal;
        }

        public void setShopTotal(double ShopTotal) {
            this.ShopTotal = ShopTotal;
        }

        public double getShopTotalWithoutFreight() {
            return ShopTotalWithoutFreight;
        }

        public void setShopTotalWithoutFreight(double ShopTotalWithoutFreight) {
            this.ShopTotalWithoutFreight = ShopTotalWithoutFreight;
        }

        public Object getUserBonus() {
            return UserBonus;
        }

        public void setUserBonus(Object UserBonus) {
            this.UserBonus = UserBonus;
        }

        public BaseCouponBean getOneCoupons() {
            return OneCoupons;
        }

        public void setOneCoupons(BaseCouponBean OneCoupons) {
            this.OneCoupons = OneCoupons;
        }

        public Object getFreightProductGroup() {
            return freightProductGroup;
        }

        public void setFreightProductGroup(Object freightProductGroup) {
            this.freightProductGroup = freightProductGroup;
        }

        public boolean isIsFreeFreight() {
            return IsFreeFreight;
        }

        public void setIsFreeFreight(boolean IsFreeFreight) {
            this.IsFreeFreight = IsFreeFreight;
        }

        public int getVshopId() {
            return VshopId;
        }

        public void setVshopId(int VshopId) {
            this.VshopId = VshopId;
        }

        public boolean isIsSelf() {
            return IsSelf;
        }

        public void setIsSelf(boolean IsSelf) {
            this.IsSelf = IsSelf;
        }

        public boolean isExistShopBranch() {
            return ExistShopBranch;
        }

        public void setExistShopBranch(boolean ExistShopBranch) {
            this.ExistShopBranch = ExistShopBranch;
        }

        public int getShopBranchId()
        {
            return ShopBranchId;
        }

        public void setShopBranchId(int ShopBranchId)
        {
            this.ShopBranchId = ShopBranchId;
        }

        public String getShopBranchName()
        {
            return ShopBranchName;
        }

        public void setShopBranchName(String ShopBranchName)
        {
            this.ShopBranchName = ShopBranchName;
        }

        public boolean isIsOpenLadder() {
            return IsOpenLadder;
        }

        public void setIsOpenLadder(boolean IsOpenLadder) {
            this.IsOpenLadder = IsOpenLadder;
        }

        public boolean isIsInvoice() {
            return IsInvoice;
        }

        public void setIsInvoice(boolean IsInvoice) {
            this.IsInvoice = IsInvoice;
        }

        public String getInvoiceDay() {
            return InvoiceDay;
        }

        public void setInvoiceDay(String InvoiceDay) {
            this.InvoiceDay = InvoiceDay;
        }

        public List<CartItemProductModel> getCartItemModels() {
            return CartItemModels;
        }

        public void setCartItemModels(List<CartItemProductModel> CartItemModels) {
            this.CartItemModels = CartItemModels;
        }

        public List<BaseCouponBean> getUserCoupons() {
            return UserCoupons;
        }

        public void setUserCoupons(List<BaseCouponBean> UserCoupons) {
            this.UserCoupons = UserCoupons;
        }

        public List<BaseCouponBean> getBaseCoupons() {
            return BaseCoupons;
        }

        public void setBaseCoupons(List<BaseCouponBean> BaseCoupons) {
            this.BaseCoupons = BaseCoupons;
        }

        public List<InvoiceTpyesBean> getInvoiceTpyes() {
            return invoiceTpyes;
        }

        public void setInvoiceTpyes(List<InvoiceTpyesBean> invoiceTpyes) {
            this.invoiceTpyes = invoiceTpyes;
        }

        public static class InvoiceTpyesBean {
            /**
             * Id : 2
             * Name : 电子普通发票
             * Rate : 3
             */

            private int Id;
            private String Name;
            private int Rate;

            public int getId() {
                return Id;
            }

            public void setId(int Id) {
                this.Id = Id;
            }

            public String getName() {
                return Name;
            }

            public void setName(String Name) {
                this.Name = Name;
            }

            public int getRate() {
                return Rate;
            }

            public void setRate(int Rate) {
                this.Rate = Rate;
            }
        }

        public String getRemark() {
            return remark;
        }

        public void setRemark(String remark) {
            this.remark = remark;
        }

        public VatInvoiceBean getSimpleInvoice() {
            return simpleInvoice;
        }

        public void setSimpleInvoice(VatInvoiceBean simpleInvoice) {
            this.simpleInvoice = simpleInvoice;
        }
    }

}
